class FatturaFornitore < ActiveRecord::Base
  acts_as_paranoid unless SHOW_DELETED
  has_attached_file :fattura, :whiny => false,
    :styles => { :medium => "240x240>", :thumbnail => [ "60x60>", :jpg ] }
  
  belongs_to :partner
  has_and_belongs_to_many :centri_costo, :join_table => 'centri_costo_fatture_fornitore', :uniq => true, :class_name => 'CentroCosto'
  belongs_to :metodo_pagamento
  belongs_to :conto_finanziario
  has_many :note, :as => :nota_ref, :dependent => :protect
  validates_numericality_of :totale
  validates_presence_of :numero, :data_fattura, :partner
  validates_presence_of :data_pagamento, :if => :is_saldata?
  validates_uniqueness_of :numero, :scope => [ :data_fattura, :partner_id, :deleted_at],
    :message => 'Fattura già presente nel database'

  def is_saldata?
    saldata == true
  end

  def name
    "#{numero.to_s + " del " + data_fattura.to_s}"
  end
end
